// This file was decompiled using SASCM.ini published by GTAG (http://gtag.gtagaming.com/opcode-database) on 14.6.2013
{$CLEO .CS}

//-------------MAIN---------------
thread 'CAX' 
 
0A95: enable_thread_saving 
0A95: enable_thread_saving 
0AF1: write_int 0 to_ini_file "CLEO\POZIT.INI" section "ESCORT" key "RES"
:CAX_370
wait 9 
if 
   Player.Defined($PLAYER_CHAR)
jf @CAX_370 
wait 50 
0209: 7@ = random_int_in_ranges 1 27 
if 
  7@ == 1 
jf @CAX_3B2 
8@ = 400 
jump @CAX_72D 

:CAX_3B2
if 
  7@ == 2 
jf @CAX_3D3 
8@ = 405 
jump @CAX_72D 

:CAX_3D3
if 
  7@ == 3 
jf @CAX_3F4 
8@ = 409 
jump @CAX_72D 

:CAX_3F4
if 
  7@ == 3 
jf @CAX_415 
8@ = 421 
jump @CAX_72D 

:CAX_415
if 
  7@ == 4 
jf @CAX_436 
8@ = 426 
jump @CAX_72D 

:CAX_436
if 
  7@ == 5 
jf @CAX_457 
8@ = 445 
jump @CAX_72D 

:CAX_457
if 
  7@ == 6 
jf @CAX_478 
8@ = 458 
jump @CAX_72D 

:CAX_478
if 
  7@ == 7 
jf @CAX_499 
8@ = 466 
jump @CAX_72D 

:CAX_499
if 
  7@ == 8 
jf @CAX_4BA 
8@ = 467 
jump @CAX_72D 

:CAX_4BA
if 
  7@ == 9 
jf @CAX_4DB 
8@ = 470 
jump @CAX_72D 

:CAX_4DB
if 
  7@ == 10 
jf @CAX_4FC 
8@ = 479 
jump @CAX_72D 

:CAX_4FC
if 
  7@ == 11 
jf @CAX_51D 
8@ = 490 
jump @CAX_72D 

:CAX_51D
if 
  7@ == 12 
jf @CAX_53E 
8@ = 492 
jump @CAX_72D 

:CAX_53E
if 
  7@ == 13 
jf @CAX_55F 
8@ = 507 
jump @CAX_72D 

:CAX_55F
if 
  7@ == 14 
jf @CAX_580 
8@ = 516 
jump @CAX_72D 

:CAX_580
if 
  7@ == 15 
jf @CAX_5A1 
8@ = 529 
jump @CAX_72D 

:CAX_5A1
if 
  7@ == 16 
jf @CAX_5C2 
8@ = 540 
jump @CAX_72D 

:CAX_5C2
if 
  7@ == 17 
jf @CAX_5E3 
8@ = 546 
jump @CAX_72D 

:CAX_5E3
if 
  7@ == 18 
jf @CAX_604 
8@ = 547 
jump @CAX_72D 

:CAX_604
if 
  7@ == 19 
jf @CAX_625 
8@ = 550 
jump @CAX_72D 

:CAX_625
if 
  7@ == 20 
jf @CAX_646 
8@ = 551 
jump @CAX_72D 

:CAX_646
if 
  7@ == 21 
jf @CAX_667 
8@ = 560 
jump @CAX_72D 

:CAX_667
if 
  7@ == 22 
jf @CAX_688 
8@ = 561 
jump @CAX_72D 

:CAX_688
if 
  7@ == 23 
jf @CAX_6A9 
8@ = 566 
jump @CAX_72D 

:CAX_6A9
if 
  7@ == 24 
jf @CAX_6CA 
8@ = 567 
jump @CAX_72D 

:CAX_6CA
if 
  7@ == 25 
jf @CAX_6EB 
8@ = 579 
jump @CAX_72D 

:CAX_6EB
if 
  7@ == 26 
jf @CAX_70C 
8@ = 580 
jump @CAX_72D 

:CAX_70C
if 
  7@ == 27 
jf @CAX_72D 
8@ = 585 
jump @CAX_72D 

:CAX_72D
Model.Load(#FAM1)
Model.Load(#FAM2)
Model.Load(#FAM3)
Model.Load(8@)
Model.Load(#AK47)
Model.Load(#M4)
Model.Load(#MP5LNG)
Model.Load(#COLT45)
Model.Load(#SILENCED)
Model.Load(#DESERT_EAGLE)
Model.Load(#SAWNOFF)
Model.Load(#SHOTGSPA)
Model.Load(#MICRO_UZI)
Model.Load(#TEC9)
Model.Load(#CHROMEGUN)
038B: load_requested_models 

:CAX_777
wait 0 
if or
   not Model.Available(#FAM1)
   not Model.Available(#FAM2)
   not Model.Available(#FAM3)
   not Model.Available(8@)
   not Model.Available(#AK47)
   not Model.Available(#M4)
   not Model.Available(#MP5LNG)
   not Model.Available(#COLT45)
jf @CAX_7D1 
0ACA: show_text_box "~R~~H~ERROR DONT AVAILABLE MODEL" 
end_thread 

:CAX_7D1
if or
   not Model.Available(#SILENCED)
   not Model.Available(#DESERT_EAGLE)
   not Model.Available(#SAWNOFF)
   not Model.Available(#SHOTGSPA)
   not Model.Available(#MICRO_UZI)
   not Model.Available(#TEC9)
   not Model.Available(#CHROMEGUN)
jf @CAX_825 
0ACA: show_text_box "~R~~H~ERROR DONT AVAILABLE MODEL" 
end_thread 

:CAX_825
if and
   Model.Available(#FAM1)
   Model.Available(#FAM2)
   Model.Available(#FAM3)
   Model.Available(8@)
   Model.Available(#AK47)
   Model.Available(#M4)
   Model.Available(#MP5LNG)
   Model.Available(#COLT45)
jf @CAX_88A 
if and
   Model.Available(#SILENCED)
   Model.Available(#DESERT_EAGLE)
   Model.Available(#SAWNOFF)
   Model.Available(#SHOTGSPA)
   Model.Available(#MICRO_UZI)
   Model.Available(#TEC9)
   Model.Available(#CHROMEGUN)
jf @CAX_88A 
jump @CAX_891 

:CAX_88A
jump @CAX_777 

:CAX_891
wait 5 
04C4: store_coords_to 1@ 2@ 3@ from_actor $PLAYER_ACTOR with_offset 70.0 70.0 0.0 
04D3: get_nearest_car_path_coords_from 1@ 2@ 3@ type 0 store_to 4@ 5@ 6@ 
9@ = Car.Create(8@, 4@, 5@, 6@)
Car.Angle(9@) = 184.7214
Car.SetMaxSpeed(9@, 253.0)
Car.DoorStatus(9@) = 5
00AE: set_car 9@ traffic_behaviour_to 2 
Car.SetDriverBehaviour(9@, DriveToPlayer)
053F: set_car 9@ tires_vulnerability 0
car.Health(9@) = 50000
Car.SetImmunities(9@, 0, 1, 1, 1, 1)

01EC: make_car 9@ very_heavy 1 

 
0@ = Car.Health(9@)
0587: enable_car 9@ validate_position 0 
17@ = Marker.CreateAboveCar(9@)
Marker.SetColor(17@, 13107400)
072F: enable_car 9@ stuck_check_distance 0.5 time 4000 and_restore_if stuck 1 flipped 1 unk_place_on_road_properly 1 to_path 7 // extended 03CC 
0190: add_car 9@ to_flipped_check // 6 max 
10@ = Actor.CreateAsDriver(Gang2, #FAM1, 9@)
11@ = Actor.CreateAsPassenger(Gang2, #FAM1, 9@, 0)
12@ = Actor.CreateAsPassenger(Gang2, #FAM2, 9@, 1)
13@ = Actor.CreateAsPassenger(Gang2, #FAM3, 9@, 2)
0209: 14@ = random_int_in_ranges 22 32 
0209: 15@ = random_int_in_ranges 22 32 
0209: 16@ = random_int_in_ranges 22 32 
Actor.GiveWeaponAndAmmo(10@, 16@, 9999)
Actor.GiveWeaponAndAmmo(11@, MP5, 9999)
Actor.GiveWeaponAndAmmo(12@, MP5, 9999)
Actor.GiveWeaponAndAmmo(13@, MP5, 9999)
Actor.WeaponAccuracy(10@) = 98
Actor.WeaponAccuracy(11@) = 98
Actor.WeaponAccuracy(12@) = 98
Actor.WeaponAccuracy(13@) = 98
0446: set_actor 10@ dismemberment_possible 0 
Actor.SetImmunities(10@, 0, 1, 1, 1, 1)
Actor.Health(10@) = 1600
0446: set_actor 11@ dismemberment_possible 0 
Actor.SetImmunities(11@, 0, 1, 1, 1, 1)
Actor.Health(11@) = 1600
0446: set_actor 12@ dismemberment_possible 0 
Actor.SetImmunities(12@, 0, 1, 1, 1, 1)
Actor.Health(12@) = 1600
0446: set_actor 13@ dismemberment_possible 0 
Actor.SetImmunities(13@, 0, 1, 1, 1, 1)
Actor.Health(13@) = 1600


0978: copy_decision_maker 65540 to 18@ 
0709: set_decision_maker 18@ on_event 36 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 37 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 36 taskID 1024 respect 0.0 hate 50.0 like 0.0 dislike 0.0 in_car 0 on_foot 1 // see *.ped files 
060B: set_actor 10@ decision_maker_to 18@ 
060B: set_actor 11@ decision_maker_to 18@ 
060B: set_actor 12@ decision_maker_to 18@ 
060B: set_actor 13@ decision_maker_to 18@ 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 
wait 500 
jump @CAX_E89 
0661: NOP "========================================================================" 

:CAX_C67
wait 0 
if 
   Player.Defined(0)
jf @CAX_C7A 

:CAX_C7A
if or
   Actor.Dead($PLAYER_ACTOR)
  0@ == 0 
   not 0@ > 950 
jf @CAX_CCF 
jump @CAX_108A 

:CAX_CCF
0AF0: 19@ = get_int_from_ini_file "CLEO\POZIT.INI" section "ESCORT" key "RES" 
if 
  19@ >= 1 
jf @CAX_D0A 
jump @CAX_108A 

:CAX_D0A
if and
   Actor.Dead(10@)
   Actor.Dead(11@)
   Actor.Dead(12@)
   Actor.Dead(13@)
jf @CAX_D30 
jump @CAX_108A 

:CAX_D30
if 
   Actor.Driving($PLAYER_ACTOR)
jf @CAX_C67 
if 
   not Car.Wrecked(9@)
jf @CAX_C67 
if 
0207:   actor $PLAYER_ACTOR near_car 9@ radius 20.0 20.0 10.0 flag 0 in_car 
jf @CAX_C67
if 
   not Actor.Dead(10@)
jf @CAX_D91 
06C9: remove_actor 10@ from_group 
036A: put_actor 10@ in_car 9@ 

:CAX_D91
if 
   not Actor.Dead(11@)
jf @CAX_DB0 
06C9: remove_actor 11@ from_group 
0430: put_actor 11@ into_car 9@ passenger_seat 0 
0978: copy_decision_maker 65540 to 18@ 
0709: set_decision_maker 18@ on_event 36 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 37 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 36 taskID 1024 respect 0.0 hate 50.0 like 0.0 dislike 0.0 in_car 0 on_foot 1 // see *.ped files 
060B: set_actor 11@ decision_maker_to 18@ 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 11@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 

:CAX_DB0
if 
   not Actor.Dead(12@)
jf @CAX_DCF 
06C9: remove_actor 12@ from_group 
0430: put_actor 12@ into_car 9@ passenger_seat 1 
0978: copy_decision_maker 65540 to 18@ 
0709: set_decision_maker 18@ on_event 36 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 37 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 36 taskID 1024 respect 0.0 hate 50.0 like 0.0 dislike 0.0 in_car 0 on_foot 1 // see *.ped files 
060B: set_actor 12@ decision_maker_to 18@ 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 12@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 

:CAX_DCF
if 
   not Actor.Dead(13@)
jf @CAX_DEE 
06C9: remove_actor 13@ from_group 
0430: put_actor 13@ into_car 9@ passenger_seat 2 
0978: copy_decision_maker 65540 to 18@ 
0709: set_decision_maker 18@ on_event 36 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 37 taskID 1022 respect 0.0 hate 100.0 like 0.0 dislike 0.0 in_car 1 on_foot 0 // see *.ped files 
0709: set_decision_maker 18@ on_event 36 taskID 1024 respect 0.0 hate 50.0 like 0.0 dislike 0.0 in_car 0 on_foot 1 // see *.ped files 
060B: set_actor 13@ decision_maker_to 18@ 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 17 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 20 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 6 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 7 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 9 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 10 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 11 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 12 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 13 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 4 // see ped.dat 
077A: set_actor 13@ acquaintance 4 to_actors_pedtype 5 // see ped.dat 

:CAX_DEE
Car.SetMaxSpeed(9@, 253.0)
Car.DoorStatus(9@) = 5
00AE: set_car 9@ traffic_behaviour_to 2 
Car.SetDriverBehaviour(9@, DriveToPlayer)
053F: set_car 9@ tires_vulnerability 0 
0587: enable_car 9@ validate_position 0 
17@ = Marker.CreateAboveCar(9@)
Marker.SetColor(17@, 13107400)
072F: enable_car 9@ stuck_check_distance 0.5 time 4000 and_restore_if stuck 1 flipped 1 unk_place_on_road_properly 1 to_path 7 // extended 03CC 
0190: add_car 9@ to_flipped_check // 6 max 
0661: NOP "========================================================================" 

:CAX_E89
wait 0 
if 
   Player.Defined(0)
jf @CAX_E9C 

:CAX_E9C
if and
   not Actor.Dead(10@)
   not Car.Wrecked(9@)
then 
if 
   Actor.InCar(10@, 9@)
then 
if
  8204:   not actor $PLAYER_ACTOR near_car 9@ radius 15.0 15.0 sphere 0 in_car
then  
Car.SetMaxSpeed(9@, 253.0)  
Car.SetDriverBehaviour(9@, DriveToPlayer)

end
end
end 
if and
   not Actor.Dead(10@)
   not Car.Wrecked(9@)
then 
if 
   Actor.InCar(10@, 9@)
then
if
0204:   actor $PLAYER_ACTOR near_car 9@ radius 18.0 18.0 sphere 0 in_car 
then
Car.SetSpeedInstantly(9@, 0.0)
0ACD: show_text_highpriority "~y~~H~you run cj move" time 9000
wait 5 
end
end
end
if or
   Actor.Dead($PLAYER_ACTOR)
  0@ == 0 
   not 0@ > 950 
jf @CAX_EF1 
jump @CAX_108A 

:CAX_EF1
0AF0: 19@ = get_int_from_ini_file "CLEO\POZIT.INI" section "ESCORT" key "RES" 
if 
  19@ >= 1 
jf @CAX_F2C 
jump @CAX_108A 

:CAX_F2C
if and
   Actor.Dead(10@)
   Actor.Dead(11@)
   Actor.Dead(12@)
   Actor.Dead(13@)
jf @CAX_F52 
jump @CAX_108A 

:CAX_F52
if 
   not Actor.Driving($PLAYER_ACTOR)
jf @CAX_E89 
if 
   not Car.Wrecked(9@)
jf @CAX_E89 
if 
0203:   actor $PLAYER_ACTOR near_car 9@ radius 12.0 12.0 flag 0 on_foot 
jf @CAX_E89 
Car.SetSpeedInstantly(9@, 0.0)
Marker.Disable(17@)
Car.DoorStatus(9@) = 1
07AF: $PLAYER_GROUP = player $PLAYER_CHAR group 
if 
   not Actor.Dead(10@)
jf @CAX_FCF 
05CD: AS_actor 10@ exit_car 9@ 
0631: put_actor 10@ in_group $PLAYER_GROUP 

:CAX_FCF
if 
   not Actor.Dead(11@)
jf @CAX_FEF 
05CD: AS_actor 11@ exit_car 9@ 
0631: put_actor 11@ in_group $PLAYER_GROUP 

:CAX_FEF
if 
   not Actor.Dead(12@)
jf @CAX_100F 
05CD: AS_actor 12@ exit_car 9@ 
0631: put_actor 12@ in_group $PLAYER_GROUP 

:CAX_100F
if 
   not Actor.Dead(13@)
jf @CAX_1033 
05CD: AS_actor 13@ exit_car 9@ 
0631: put_actor 13@ in_group $PLAYER_GROUP 
wait 50 

:CAX_1033
wait 50 
jump @CAX_C67 
0661: NOP "========================================================================" 

:CAX_108A
Actor.RemoveReferences(10@)
Actor.RemoveReferences(11@)
Actor.RemoveReferences(12@)
Actor.RemoveReferences(13@)
Car.RemoveReferences(9@)
end_thread 